home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Magazin: Amiga-CD 1998 February
/
Amiga-CD 1998 #2.iso
/
pd-disketten
/
dms-gepackt
/
3_96
/
apd-3-96-2.dms
/
apd-3-96-2.adf
/
Amiga-E-Kurs
/
listing_1.e
< prev
next >
Wrap
Text File
|
1996-01-30
|
2KB
|
49 lines
/* Objekte und Prozeduren, ©1995 Marcel Bennicke */
ENUM MANN, FRAU /* zwei Konstanten */
OBJECT person /* sinnvolle Zusammenfassung */
groesse,gewicht /* der Daten einer Person */
ENDOBJECT
PROC eingabe(p:PTR TO person)
/* ohne Objekt, müßte man jede Komponente (groesse,
gewicht) einzeln als Variable übergeben */
DEF hilf[10]:STRING
WriteF('Größe [cm] : '); ReadStr(stdout,hilf)
p.groesse:=Val(hilf,NIL)
/* Eingabe als Zahl in Komponente groesse tun */
WriteF('Gewicht [kg] : '); ReadStr(stdout,hilf)
p.gewicht:=Val(hilf,NIL) /* in gewicht speich. */
WriteF('Geschlecht (m/w): ');ReadStr(stdout,hilf)
IF StrCmp(hilf,'m') /* Eingabe = 'm' ? */
RETURN MANN /* Prozedur verlassen */
ELSE /* und MANN zurückgeben */
RETURN FRAU /* sonst FRAU */
ENDIF
ENDPROC /* hier kommen wir niemals an */
PROC main()
DEF ich:person, geschl, q
WriteF('Machen Sie Angaben zu ihrer Person:\n\n')
/* An die Eingabeprozedur wird das Objekt ich
übergeben; danach stehen in dessen Komponenten
die Daten; als Rückgabewert erhalten wir das
Geschlecht des Benutzers */
geschl:=eingabe(ich)
q:=ich.groesse/ich.gewicht /* Quotient bilden */
/* falls Benutzer ein Mann und der Quotient<2 ist,
dann 'zu schwer', bei Frauen gilt Quotient<3 */
IF ((geschl=MANN) AND (q<2)) OR
((geschl=FRAU) AND (q<3))
WriteF('Wie wäre es mit einer kleinen Diät?\n\n')
ELSE
WriteF('Sie haben das richtige Gewicht!\n\n')
ENDIF
ENDPROC